﻿using System;

namespace IssueIT.Core.Domain.Model
{
	/// <summary>
	/// Project role type, a role a user can have on a project
	/// </summary>
	public class Role : IEntity, IAssignable
	{
		public static readonly Role Owner = new OwnerRole();

		private class OwnerRole : Role
		{
			public OwnerRole() : base("Owner")
			{
				Id = new Guid("BD593D64-EADC-4C8E-A8AD-6B962FB420F7");
			}
		}

		public Role(string name)
		{
			Name = name;
		}

		public Guid Id { get; protected set; }
		public string Name { get; private set; }
	}
}